Semantic Segmentation in Aerial/Satellite imagery


Project Green-Roof: Estimating roof greenification potential from satellite/aerial imagery


Stack:

The Questions

  • What is semantic segmentation?
  • What is it used for?
  • How much $m^2$ of roof area is there in Berlin?
  • How much of that area is greened?
  • What potential is there?

Roof-top Segmentation

AIRS-Dataset

    Raw:
  • 475km2 of aerial imagery (Auckland, NZ)
  • 7.5cm/px resolution
  • 850 images/16GB
    Processed:
  • random brightness (50% variation)
  • uniform-blurring
  • downsampled to 30cm/px
  • 25.000 samples at 256x256px

U-Net Model

  • Encoder / Decoder type neural net (with skip-connections)
  • 39 layers
  • 2.000.000 parameters
  • heavy lifting done on Google Colab (GPU)
  • Loss function: Binary Crossentropy
  • Optimizer: Adam
  • Metrics: Accuracy

Prediction

raw input
base truth
prediction

Cars Segmentation

Prediction

raw input
base truth
prediction

Let's combine them

  • Model compiled for EdgeTPU for inference
  • Model input layers share input, out is concatenated

LIVE DEMO TIME!!!

Next Steps

  • Enter into AIRS competition
  • More data!
  • More data!
  • More augmentation!

Thank you for your attention

In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [8]:
import pandas as pd
from IPython.display import HTML

import matplotlib.pyplot as mp
mp.style.use(['dark_background'])

import numpy as np
import pandas as pd

import plotly as pl
import plotly.graph_objects as go

import plotly.express as px

import ee

Heading Nr. 2

Some random text

Altair Plots (working with IFrame import)

Out[13]:

Plotly Plot